/*
* Copyright 2016 Yonyou Auto Information Technology（Shanghai） Co., Ltd. All Rights Reserved.
*
* This software is published under the terms of the YONYOU Software
* License version 1.0, a copy of which has been included with this
* distribution in the LICENSE.txt file.
*
* @Project Name : marketing-common
*
* @File name : SosHelpFrecordDto.java
*
* @Author : WangHuicheng
*
* @Date : 2016年11月21日
*
----------------------------------------------------------------------------------
*     Date             Who             Version     Comments
* 1. 2016年11月21日    WangHuicheng    1.0
*
*
*
*
----------------------------------------------------------------------------------
*/
	
package org.marketing.common.dto.maintain;

import java.util.Date;
import java.util.List;

import javax.validation.constraints.NotNull;

import org.marketing.common.constants.ValidationConstant;
import org.springframework.format.annotation.DateTimeFormat;

import com.fasterxml.jackson.annotation.JsonFormat;

/**
*
* @author WangHuicheng
* 一键救援跟进记录DTO
* @date 2016年11月21日
*/
public class SosHelpFrecordDto {
    
    /**
     * 一键救援跟进记录主键
     */
    private Long tlSoshelpFollowRecodeId;
    private Long userId;

    /**养修预约主键
     * 
     */
    @NotNull(message=ValidationConstant.VALIDATION_TESTDRIVEAPPOINTMENTID_NO_NOTNULL)
    private Long soshelpId;

    /**
     * 车系
     */
    private String packageCode;
    
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm", timezone = "GMT+8")
    /**
     * 预约日期
     */
    private Date reserveDate;
    
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm", timezone = "GMT+8")
    /**
     * 跟进时间
     */
    private Date followDate;
    
    @NotNull(message=ValidationConstant.VALIDATION_APPOINTMENTSTATUS_NO_NOTNULL)
    /**
     * 跟进状态
     */
    private Integer supportStatus;

    /**
     * 备注
     */
    private String remark;

    private Long createBy;

    private Date createDate;

    private Long updateBy;

    private Date updateDate;
    
    
    //额外参数定义
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm", timezone = "GMT+8")
    private Date startDate;//到店时间
    
    /**
     * 试乘试驾跟进记录List
     */
    private List<SosHelpFrecordDto> followRecordList;
    
    
    /**
     * @return the userId
     */
    public Long getUserId() {
        return userId;
    }


    
    /**
     * @param userId the userId to set
     */
    public void setUserId(Long userId) {
        this.userId = userId;
    }





    /**
     * @return the packageCode
     */
    public String getPackageCode() {
        return packageCode;
    }

    
    /**
     * @param packageCode the packageCode to set
     */
    public void setPackageCode(String packageCode) {
        this.packageCode = packageCode;
    }

    
    /**
     * @return the reserveDate
     */
    public Date getReserveDate() {
        return reserveDate;
    }

    
    /**
     * @param reserveDate the reserveDate to set
     */
    public void setReserveDate(Date reserveDate) {
        this.reserveDate = reserveDate;
    }

    
    /**
     * @return the followDate
     */
    public Date getFollowDate() {
        return followDate;
    }

    
    /**
     * @param followDate the followDate to set
     */
    public void setFollowDate(Date followDate) {
        this.followDate = followDate;
    }


    
    /**
     * @return the remark
     */
    public String getRemark() {
        return remark;
    }

    
    /**
     * @param remark the remark to set
     */
    public void setRemark(String remark) {
        this.remark = remark;
    }

    
    /**
     * @return the createBy
     */
    public Long getCreateBy() {
        return createBy;
    }

    
    /**
     * @param createBy the createBy to set
     */
    public void setCreateBy(Long createBy) {
        this.createBy = createBy;
    }

    
    /**
     * @return the createDate
     */
    public Date getCreateDate() {
        return createDate;
    }

    
    /**
     * @param createDate the createDate to set
     */
    public void setCreateDate(Date createDate) {
        this.createDate = createDate;
    }

    
    /**
     * @return the updateBy
     */
    public Long getUpdateBy() {
        return updateBy;
    }

    
    /**
     * @param updateBy the updateBy to set
     */
    public void setUpdateBy(Long updateBy) {
        this.updateBy = updateBy;
    }

    
    /**
     * @return the updateDate
     */
    public Date getUpdateDate() {
        return updateDate;
    }

    
    /**
     * @param updateDate the updateDate to set
     */
    public void setUpdateDate(Date updateDate) {
        this.updateDate = updateDate;
    }



    
    /**
     * @return the startDate
     */
    public Date getStartDate() {
        return startDate;
    }



    
    /**
     * @param startDate the startDate to set
     */
    public void setStartDate(Date startDate) {
        this.startDate = startDate;
    }



    
    /**
     * @return the followRecordList
     */
    public List<SosHelpFrecordDto> getFollowRecordList() {
        return followRecordList;
    }



    
    /**
     * @param followRecordList the followRecordList to set
     */
    public void setFollowRecordList(List<SosHelpFrecordDto> followRecordList) {
        this.followRecordList = followRecordList;
    }



    
    /**
     * @return the tlSoshelpFollowRecodeId
     */
    public Long getTlSoshelpFollowRecodeId() {
        return tlSoshelpFollowRecodeId;
    }



    
    /**
     * @param tlSoshelpFollowRecodeId the tlSoshelpFollowRecodeId to set
     */
    public void setTlSoshelpFollowRecodeId(Long tlSoshelpFollowRecodeId) {
        this.tlSoshelpFollowRecodeId = tlSoshelpFollowRecodeId;
    }



    
    /**
     * @return the soshelpId
     */
    public Long getSoshelpId() {
        return soshelpId;
    }



    
    /**
     * @param soshelpId the soshelpId to set
     */
    public void setSoshelpId(Long soshelpId) {
        this.soshelpId = soshelpId;
    }



    
    /**
     * @return the supportStatus
     */
    public Integer getSupportStatus() {
        return supportStatus;
    }



    
    /**
     * @param supportStatus the supportStatus to set
     */
    public void setSupportStatus(Integer supportStatus) {
        this.supportStatus = supportStatus;
    }
    
    
    
    
    
}
